package com.atguigu.guilimall.search.vo;

import com.atguigu.common.to.es.SkuEsModel;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;
/**
 * 检索服务的返回结果类
 */
@Data
public class SearchResult {
    /**
     * 查询到的商品信息
     */
    private List<SkuEsModel> products;    //页面选择的所有商品
    private Integer pageNum;    //当前页码
    private Long total;    //总记录数
    private Integer totalPages;    //总页码
    private List<Integer> pageNavs;    //导航页码
    private List<BrandVo> brands;    //当前查询到的结果，所有涉及到的品牌
    private List<CatalogVo> catalogs;    //当前查询到的结果，所有涉及到的分类
    private List<AttrVo> attrs;    //当前查询到的结果，所有涉及到的属性
    private List<Long> attrIds = new ArrayList<>();
    private List<NavVo> navs = new ArrayList<>();    //面包屑导航数据

    //=====================以上是返给页面的信息==========================

    /**
     * 面包屑导航
     */
    @Data
    public static class NavVo{
        private String navName;
        private String navValue;
        private String link;    //要跳转到的位置
    }

    /**
     * 品牌信息
     */
    @Data
    public static class BrandVo{
        private Long brandId;
        private String brandName;
        private String brandImg;
    }

    /**
     * 分类信息
     */
    @Data
    public static class CatalogVo{
        private Long catalogId;
        private String catalogName;
        private String brandImg;
    }

    /**
     * 属性信息
     */
    @Data
    public static class AttrVo{
        private Long attrId;
        private String attrName;
        private List<String> attrValue;
    }}
